package com.huel.dao;

import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;

import com.huel.bean.Item;
import com.huel.bean.User;

import java.util.ArrayList;
import java.util.List;

public class UserDao  {
    private UserHelper helper;
    public UserDao(Context context) {
        helper = new UserHelper(context); // 创建Dao时, 创建Helper
    }
    public void insert(User user) {
        SQLiteDatabase db = helper.getWritableDatabase(); // 获取数据库对象
        // 用来装载要插入的数据的 Map<列名, 列的值>
        ContentValues values = new ContentValues();
        values.put("name", user.getName());
        values.put("password", user.getPassword());
        long id = db.insert("user", null, values); // 注册用户,
        user.setId(id);  // 得到id
        db.close();         // 关闭数据库
    }

    //更新数据  也就是更改密码操作
    public int update(User user) {
        SQLiteDatabase db = helper.getWritableDatabase();
        ContentValues values = new ContentValues(); // 要修改的数据
        values.put("password", user.getPassword());
        int count = db.update("cart", values, "name=?",
                new String[] { user.getName() + "" }); // 更新并得到行数
        db.close();
        return count;
    }
    //查询是否是个合法用户
    public User judge(String name, String password) {
        User user =null;
        SQLiteDatabase db = helper.getReadableDatabase();
        Cursor c = db.query("user", null, "name=? and password=?", new String[]{name+"",password+""}, null, null,
                null);
        List<Item> list = new ArrayList<Item>();
        while (c.moveToNext()) {  //如果能登录 就会返回一个user对象
            long id = c.getLong(c.getColumnIndex("_id")); // 可以根据列名获取索引
            user =new User(id,c.getString(1),c.getString(2));
        }
        c.close();
        db.close();
        return user;
    }


}
